const storage = {
    setLocal:
        function(key, value) {
            window.localStorage.setItem(key, JSON.stringify(value));
        },
    getLocal:
        function(key) {
            let value = window.localStorage.getItem(key);
            return JSON.parse(value);
        },
    setSession:
        function(key, value) {
            window.sessionStorage.setItem(key, JSON.stringify(value));
        },
    getSession:
        function(key) {
            let value = window.sessionStorage.getItem(key);
            return JSON.parse(value);
        },
    clearOneLocal:
        function(key) {
            window.localStorage.removeItem(key);
        },
    clearOneSession:
        function(key) {
            window.sessionStorage.removeItem(key);
        },
    clearAllLocal:
        function() {
            window.localStorage.clear();
        },
    clearAllSession:
        function() {
            window.sessionStorage.clear();
        },
    dateFormat(fmt, date) {
        let ret = "";
        date = new Date(date);
        const opt = {
            'Y+': date.getFullYear().toString(), // 年
            'm+': (date.getMonth() + 1).toString(), // 月
            'd+': date.getDate().toString(), // 日
            'H+': date.getHours().toString(), // 时
            'M+': date.getMinutes().toString(), // 分
            'S+': date.getSeconds().toString() // 秒
            // 有其他格式化字符需求可以继续添加，必须转化成字符串
        }
        for (let k in opt) {
            ret = new RegExp('(' + k + ')').exec(fmt)
            if (ret) {
                fmt = fmt.replace(
                    ret[1],
                    ret[1].length == 1 ? opt[k] : opt[k].padStart(ret[1].length, '0')
                )
            }
        }
        return fmt
    }

};

export default storage;